package testes;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;

import alugaveis.GeneroJogo;
import alugaveis.Wii;

import exceptions.ParametroNegativoException;
import exceptions.ParametroVazioException;

public class WiiTest {

	Wii jogo;
	
	@Before
	public void setUp() throws Exception {
		
		jogo = new Wii("Naruto Shippuden: Clash of Ninja Revolution 3", 5.0,
				2012, 3, true, 1, "Tomy Corporation", GeneroJogo.LUTA);
	}

	@Test
	public void testGetPreco() {
		assertEquals(5, jogo.getPreco(), 0.1);
	}

	@Test
	public void testWii() {
		try {
			jogo = new Wii("Naruto Shippuden: Clash of Ninja Revolution 3",
					-5.0, 2012, 3, true, 1, "Tomy Corporation", GeneroJogo.LUTA);
		} catch (ParametroVazioException e) {
			assertEquals("O parametro nao pode ser nulo ou vazio",
					e.getMessage());

		} catch (ParametroNegativoException e) {
			assertEquals("O parametro nao pode ser nulo ou negativo.",
					e.getMessage());
		}
		try {
			jogo = new Wii("Naruto Shippuden: Clash of Ninja Revolution 3",
					5.0, 2012, 3, true, 1, "  ", GeneroJogo.LUTA);
		} catch (ParametroVazioException e) {
			assertEquals("O parametro nao pode ser nulo ou vazio",
					e.getMessage());

		} catch (ParametroNegativoException e) {
			assertEquals("O parametro nao pode ser nulo ou negativo.",
					e.getMessage());
		}
	}

}
